package com.jz.community.moduleauthorization.login.model;

import com.jz.community.basecomm.bean.BaseResponseInfo;
import com.jz.community.basecomm.bean.UserInfo;
import com.jz.community.basecomm.net.rxandroid.OnLoadListener;
import com.jz.community.basecomm.bean.LoginInfo;

import java.util.HashMap;

/**
 * Created by Tony.Fan on 2018/3/20 13:28
 */
public interface LoginModel {

    /**
     * 登录
     *
     * @param mobi           //用户注册手机号码
     * @param password       //密码("验证码登录"不需要)
     * @param loginType      //登录方式: default,常规登录(手机号码+密码)    sms,"验证码登录"(手机号码+验证码)   app_wechat,"微信登录"(微信code)
     * @param params         //"验证码登录",验证码值    "微信登录",code
     * @param deviceId       //设备唯一标识
     * @param registrationId //jpush注册ID如果获取失败可以使用临时的: 12345678902
     * @param onLoadListener
     */
    void requestLoginInfo(String mobi, String password, String loginType, String params, String deviceId, String registrationId, OnLoadListener<LoginInfo> onLoadListener);

    /**
     * 获取验证码
     *
     * @param mobi
     * @param type
     * @param onLoadListener
     */
    void requestGetSmsCode(String type, String mobi, OnLoadListener<LoginInfo> onLoadListener);

    /**
     * 重置密码
     *
     * @param onLoadListener
     */
    void requestGetResetPwd(HashMap<String, Object> map, OnLoadListener<BaseResponseInfo> onLoadListener);

    /**
     * 绑定推送
     *
     * @param map
     */
    void requestBindJupsh(HashMap<String, Object> map);
}
